﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using EstacionDePoder.Codigo;
using System.Configuration;
using System.Web.Security;
using BLLEP.Funcionalidad;

namespace EstacionDePoder
{
    public partial class Master : System.Web.UI.MasterPage
    {
        public void ActualizarCarrito()
        {
            CarritoManager manager = new CarritoManager(Context);
            List<CarritoItem> items = manager.TraerItems();
            lblCantidadProductos.Text = items.Count.ToString();
            FormGenerico.SetearVisibilidad(btnFinalizarCompra, items.Count > 0);
        }

        private void ValidarEstadoSitio()
        {
            bool modoMantenimiento = ConfigurationManager.AppSettings["ModoMantenimiento"].ToString().ToLower().Equals("true");
            string paginaMantenimiento = ConfigurationManager.AppSettings["PaginaMantenimiento"].ToString();

            if (modoMantenimiento && !Request.Url.AbsolutePath.Contains(paginaMantenimiento))
                Response.Redirect(paginaMantenimiento);
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            ValidarEstadoSitio();
            ActualizarCarrito();

            HyperLink lnkChatSoporte = lvSoporte.FindControl("lnkChatSoporte") as HyperLink;
            if (lnkChatSoporte != null)
                lnkChatSoporte.NavigateUrl += "?idUsuario=" + new BLLUsuario().Traer(Page.User.Identity.Name).IdUsuario.ToString();
        }

        protected void imgCerrarSesion_Click(object sender, EventArgs e)
        {
            FormsAuthentication.SignOut();
            Response.Redirect("/Default.aspx");
        }
    }
}